package com.coldchain.admin.user.entity;

import com.baomidou.mybatisplus.annotation.*;
import com.coldchain.common.enums.CompanyStatusEnum;

import java.io.Serializable;
import java.math.BigDecimal;

/**
 * <p>
 * 企业信息表
 * </p>
 *
 * @author fangliai
 * @since 2018-09-20
 */
@TableName("ch_company")
public class Company implements Serializable {

    private static final long serialVersionUID = 1L;

    @TableId(type = IdType.UUID)
    private String companyId;

    /**
     * 联系方式
     */
    private String phone;

    /**
     * 公司名称
     */
    @TableField("companyName")
    private String companyName;

    /**
     * 公司地址
     */
    @TableField("compaynAddress")
    private String compaynAddress;

    /**
     * 法人代表
     */
    @TableField("legalPerson")
    private String legalPerson;

    /**
     * 拼音首字母
     */
    private String pinyin;

    /**
     * 公司logo
     */
    private String logo;

    private String email;

    /**
     * 营业照
     */
    @TableField("businessLicense")
    private String businessLicense;


    /**
     * 是否为黑名单 0否  1是
     */
    @TableField("status")
    @EnumValue
    private CompanyStatusEnum status;

    /**
     * 总计订单数
     */
    @TableField("totalOrder")
    private Integer totalOrder;

    /**
     * 订单总金额
     */
    @TableField("totalOrderMoney")
    private BigDecimal totalOrderMoney;

    /**
     * 总计里程数
     */
    private Double totalkm;

    /**
     * 折扣
     */
    private int discount;

    /**
     * 一口价
     */
    @TableField("fixedPrice")
    private BigDecimal fixedPrice;

    /**
     * 是否开启一口价
     */
    private int isOpenFixedPrice;

    /**
     * 同城配送计算公式
     */
    @TableField("wideCityFormula")
    private String wideCityFormula;

    /**
     * 城际配送计算公式
     */
    @TableField("interCityFormula")
    private String interCityFormula;

    /**
     * 信用户额度
     */
    private BigDecimal amount;

    /**
     * 已用金额
     */
    @TableField("useAmount")
    private BigDecimal useAmount;

    @TableField("freezeAmount")
    private BigDecimal freezeAmount;

    /**
     * 创建时间
     */
    @TableField("createTime")
    private Long createTime;

    /**
     * 创建人
     */
    @TableField("createBy")
    private String createBy;


    public String getCompanyId() {
        return companyId;
    }

    public void setCompanyId(String companyId) {
        this.companyId = companyId;
    }

    public String getPhone() {
        return phone;
    }

    public void setPhone(String phone) {
        this.phone = phone;
    }

    public String getCompanyName() {
        return companyName;
    }

    public void setCompanyName(String companyName) {
        this.companyName = companyName;
    }

    public String getCompaynAddress() {
        return compaynAddress;
    }

    public void setCompaynAddress(String compaynAddress) {
        this.compaynAddress = compaynAddress;
    }

    public String getLegalPerson() {
        return legalPerson;
    }

    public void setLegalPerson(String legalPerson) {
        this.legalPerson = legalPerson;
    }

    public String getPinyin() {
        return pinyin;
    }

    public void setPinyin(String pinyin) {
        this.pinyin = pinyin;
    }

    public String getLogo() {
        return logo;
    }

    public void setLogo(String logo) {
        this.logo = logo;
    }

    public String getEmail() {
        return email;
    }

    public void setEmail(String email) {
        this.email = email;
    }

    public String getBusinessLicense() {
        return businessLicense;
    }

    public void setBusinessLicense(String businessLicense) {
        this.businessLicense = businessLicense;
    }


    public CompanyStatusEnum getStatus() {
        return status;
    }

    public void setStatus(CompanyStatusEnum status) {
        this.status = status;
    }

    public Integer getTotalOrder() {
        return totalOrder;
    }

    public void setTotalOrder(Integer totalOrder) {
        this.totalOrder = totalOrder;
    }

    public BigDecimal getTotalOrderMoney() {
        return totalOrderMoney;
    }

    public void setTotalOrderMoney(BigDecimal totalOrderMoney) {
        this.totalOrderMoney = totalOrderMoney;
    }

    public Double getTotalkm() {
        return totalkm;
    }

    public void setTotalkm(Double totalkm) {
        this.totalkm = totalkm;
    }

    public int getDiscount() {
        return discount;
    }

    public void setDiscount(int discount) {
        this.discount = discount;
    }

    public BigDecimal getFixedPrice() {
        return fixedPrice;
    }

    public void setFixedPrice(BigDecimal fixedPrice) {
        this.fixedPrice = fixedPrice;
    }

    public String getWideCityFormula() {
        return wideCityFormula;
    }

    public void setWideCityFormula(String wideCityFormula) {
        this.wideCityFormula = wideCityFormula;
    }

    public String getInterCityFormula() {
        return interCityFormula;
    }

    public void setInterCityFormula(String interCityFormula) {
        this.interCityFormula = interCityFormula;
    }


    public BigDecimal getAmount() {
        return amount;
    }

    public void setAmount(BigDecimal amount) {
        this.amount = amount;
    }

    public BigDecimal getUseAmount() {
        return useAmount;
    }

    public void setUseAmount(BigDecimal useAmount) {
        this.useAmount = useAmount;
    }

    public Long getCreateTime() {
        return createTime;
    }

    public void setCreateTime(Long createTime) {
        this.createTime = createTime;
    }

    public String getCreateBy() {
        return createBy;
    }

    public void setCreateBy(String createBy) {
        this.createBy = createBy;
    }

    public int getIsOpenFixedPrice() {
        return isOpenFixedPrice;
    }

    public void setIsOpenFixedPrice(int isOpenFixedPrice) {
        this.isOpenFixedPrice = isOpenFixedPrice;
    }

    public BigDecimal getFreezeAmount() {
        return freezeAmount;
    }

    public void setFreezeAmount(BigDecimal freezeAmount) {
        this.freezeAmount = freezeAmount;
    }
}
